package com.trade.wzj.service.xiang;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.trade.wzj.model.xiang.ClientOrderinfoDetails;
import com.trade.wzj.model.xiang.CompanyPurchaseDetails;
import com.trade.wzj.model.xiang.CompanyPurchaseInfo;

public interface ClientOrderinfoDetailsService {
	/**
	 * 客户订单详情添加
	 * 
	 * @param clientorderinfodetails
	 * @return
	 */
	public int ClientOrderinfoDetailsAdd(List<ClientOrderinfoDetails> clientorderinfodetails) throws Exception;
	
	/**
	 * 根据客户订单编号查询客户订单详情信息
	 * @param clientOrderNo订单编号
	 * @param productName产品名称
	 * @return
	 * @throws Exception
	 */
	public List<ClientOrderinfoDetails> getClientOrderDetail(Integer clientOrderNo,String productName) throws Exception;

	/**
	 * 生成公司采购单
	 * @param clientQuotaID
	 * @return
	 * @throws Exception
	 */
	public List<ClientOrderinfoDetails> getCompanyOrderMethod(Integer[] clientQuotaID)throws Exception;
	
	/**
	 * 添加公司采购内容
	 * @param companyInfo
	 */
	public void addCompanyPurchaseInfo(CompanyPurchaseInfo companyInfo)throws Exception;
	
	/**
	 * 添加公司采购详情内容
	 * @param list
	 * @throws Exception
	 */
	public void addCompanyPurchaseDetail(List<CompanyPurchaseDetails> list)throws Exception;
	
	/**
	 * 通过公司采购编号可查询公司采购新
	 * @param purchaseNo  采购编号
	 * @return
	 * @throws Exception  异常
	 */
	public List<CompanyPurchaseInfo> getAllCompanyPurchaseInfo(String purchaseNo)throws Exception;
	
	/**
	 * 根据采购编号和供应商编号查询采购详情信息
	 * @param companyPurchaseInfoID
	 * @param DetailsupplierId
	 * @param productName
	 * @return
	 * @throws Exception
	 */
	public List<CompanyPurchaseDetails> getAllCompanyPurchaseInfos(Integer companyPurchaseInfoID,Integer DetailsupplierId,String productName)throws Exception;
	
	/**
	 * 根据采购id和供应商id查询采购编号和采购日期
	 * @param id	采购编号id
	 * @param supplierId	供应商编号id
	 * @return
	 */
	public CompanyPurchaseInfo getCompanyPurchaseId(Integer id,Integer supplierId)throws Exception;
}
